<template>
 <div>
    <h2>人员列表</h2>
    <h3 style="color: red;">Count组件的求和为：{{sum}}</h3>
    <input type="text" placeholder="请输入名字" v-model="name" @keyup.enter="handleAdd">
    <button @click="handleAdd">添加</button>
    <ul>
      <li v-for="p in personList" :key="p.id">{{p.name}}</li>
    </ul>
 </div>
</template>

<script>
import {nanoid} from 'nanoid'
import {mapState, mapMutations} from 'vuex'
export default {
  name: 'Person',
  data() {
   return {
     name: ''
   }
  },
  computed: {
    personList() {
      return this.$store.state.personList;
    },
    sum() {
      return this.$store.state.sum;
    }
  },
  methods: {
    handleAdd() {
      if(!this.name.trim()) return;
      const personObj = {id: nanoid(), name: this.name}
      this.$store.commit('ADD_PERSON', personObj)
      this.name = ''
    }
  }
}
</script>

<style scoped>
</style>